Code Monkey home page Code Monkey logo

pokeruby-kr's Introduction

포켓몬스터 루비 & 사파이어

디컴파일 프로젝트(pokeruby) 기반의 한국어화 프로젝트입니다.

사용된 폰트

빌드 방법

윈도우 WSL(Ubuntu)을 기준으로 설명합니다.

프로젝트 복사

git clone https://github.com/poketony/pokeruby-kr

개발 도구 설치

devkitPro

(1) 아래 명령어를 입력하여 dkp-pacman을 설치합니다.
(참조: https://devkitpro.org/wiki/devkitPro_pacman)

wget https://apt.devkitpro.org/install-devkitpro-pacman
chmod +x ./install-devkitpro-pacman
sudo ./install-devkitpro-pacman

sudo ln -s /proc/self/mounts /etc/mtab

(2) 명령어를 입력하여 개발 도구를 설치합니다.

sudo dkp-pacman -Sy
sudo dkp-pacman -S gba-dev

libpng 설치

sudo apt install libpng-dev

컴파일러 설치 (agbcc)

(1) 아래 명령어를 실행하여 프로젝트를 받습니다.

git clone https://github.com/pret/agbcc

(2) 명령어를 입력하면 컴파일러 빌드가 진행됩니다.
초기 빌드에 오류가 날 수도 있습니다. 그런경우 아래 명령어를 다시 한 번 더 실행해주세요.

cd agbcc

# 컴파일러가 호환되지 않을 경우 실행해주세요.
git checkout bfa92a1c98ce039a7df833beefa612fea65d3874

./build.sh

(3) 아래 명령어를 실행하면 컴파일러 준비 완료.

./install.sh ../pokeruby-kr

빌드

원하는 항목을 입력하여 실행합니다.

# 기본 빌드 (루비 버전)
make

# 루비 버전 빌드
make ruby
make ruby_debug
make ruby_modern
make ruby_modern_debug

# 사파이어 버전 빌드
make sapphire
make sapphire_debug
make sapphire_modern
make sapphire_modern_debug

pokeruby-kr's People

Contributors

catship avatar poketony avatar

Stargazers

卧看微尘 avatar

pokeruby-kr's Issues

PC 전당등록 레이아웃 변경

pokeruby-0
pokeemerald-0

에메랄드처럼 제 n회 전당등록! 이 되게 바꿔 주시면 됩니다! (우상단의 조작 그래픽은 제가 작업했으니 전당등록 텍스트만 바꿔 주시면 됩니다)

배틀타워 참가 불가 포켓몬 메시지

000400000765B300 gbavc-0

배틀타워의 참가 불가 포켓몬이 알과 그란돈밖에 나열되지 않습니다! 배열도 이상한 상태고요.
일판 원문에서는
알, 뮤, 뮤츠,\n
그란돈, 레쿠쟈는\l
참가시킬 수 없습니다!\p

라고 출력됩니다!

TV 이름 평가 시 이름이 깨짐

에메랄드에서도 발생하는 문제입니다.

TV의 방송 중 트레이너의 포켓몬의 이름 평가를 하는 프로그램이 있습니다.
해당 방송에서 여러 요소(트레이너명, 포켓몬 종류 등...)에서 이름을 따와서 닉네임을 추천해 주곤 하는데, 여기서 이름을 "따오거나 글자를 따로 빼서 평가하는 매커니즘"이 여전이 영어의 것이라, 한글 닉네임을 지닌 포켓몬의 경우 스크립트 내에 삽입되는 변수가 이상하게 깨지게 됩니다. 해당 문제를 해결해 주시면 감사하겠습니다:)

    .string "이 “{STR_VAR_1}”{K_I}라는 닉네임은\n"
.string "무척 울림이 좋은\l"
.string "닉네임이군요\p"
.string "“{STR_VAR_2}”{K_I}라는 문자 뒤에\n"
.string "“{STR_VAR_3}”{K_IGA} 오는 게 아주 좋습니다!$"

레벨 100 포켓몬과 교체 후 레벨 표기에 오류가 생김

000400000765B300 gbavc-0

레벨 100 포켓몬과 교체해서 나오면 해당 포켓몬의 레벨 앞에 "1"이 붙어서 표시됩니다.
정황상 1이 :로 돌아가지 않고 계속 그대로 남아있어서 생기는 문제인 것으로 보입니다.

확인 결과 에메랄드에서는 해당 문제가 발생하지 않습니다!

TODO

레이아웃

  • 포켓몬 상태 화면

  • 파티 목록 화면
    pokeruby_01

  • 타이틀 bg, sprite 오프셋
    pokeruby_01

  • 메인메뉴 (정보 오프셋, 단위 표시)
    pokeruby_03

  • 가방 설명 오프셋
    pokeruby_04

시스템

  • 대화창
    pokeruby_02

  • 메뉴 (커서 스타일)
    pokeruby_03

  • 설정화면 깨짐
    293691402-f3c51ded-2985-4a00-ad54-d4a9decc1058

  • 포켓몬 이름 위치 조정, 비어있는 항목의 텍스트를 하이픈('-') 5자로 변경
    pokeruby_02

콘테스트 그래픽 수정

catship/pokeemerald-kr#22 에 이슈로 올려 뒀었던 완전히 같은 상황입니다. 변경사항을 보고 똑같이 적용하려고 했으나 역시 src/contest.s의 구성이 달라서 할 수는 없었네요...

아래가 일판 그래픽입니다.(에메랄드와 동일하게 만들려면 아래 그래픽으로 바꾸고 나서 작업해야 합니다) 순서대로 graphics/contest/nextturn, nextturn_numbers, nextturn_random입니다
nextturn
nextturn_numbers
nextturn_random

pokeemerald-0
예시용 에메랄드 콘테스트 스샷입니다!

가방 취소 버튼 설명 텍스트 변경

pokeruby-0

돌아갑니다
필드로

에서

필드로
돌아갑니다

로 바뀌어야 합니다. '돌아갑니다'와 '필드'가 따로 구분되어 있기 때문에 스크립트 단위에서 바꿔줘야 될 듯합니다. src/string.c 파일의 209~228행을 참고해 주세요.

modern 빌드 업데이트

  • interface\wordgroup_frame.png: '그만둔다' > '취소' 텍스트 수정됨.
    image

  • pokenav\map_misc2.png: modern 빌드 이미지 생성 및 작업 필요
    image

  • trainer_card\trainer_card.png: modern 빌드 이미지 생성 및 작업 필요
    image

  • interface\bag_screen.png: modern 빌드 이미지 생성 및 작업 필요
    image

  • misc\clock.png: modern 빌드 이미지 생성 및 작업 필요
    image

  • interface\party_menu_ordertext.png, interface\party_menu_ordertext2.png: modern 빌드 이미지 생성 및 작업 필요
    309322881-f6ae3945-5c2a-4560-a9c3-c7c14dfd0753
    309322900-b8caa117-7bf4-4a7a-a5f9-219008b70f57

통신 에러 메시지 재조정

307294570-8cef1f4c-3c35-4006-a8df-7c3043b3cc37
pokeruby-5

수정 후 위에서 아래처럼 변했습니다! 에메랄드하고 어딘가 구조가 달라서 양쪽 맞춤이 안 되는 것 같네요...

이미지 변경

  • 시계 텍스트 그래픽 - 1
    299853959-b2faffc5-fa7e-4c12-b9ff-8228e4a7f03e299396282-b41f3e7a-677a-426e-a633-b4d96336a8c1

  • 시계 텍스트 그래픽 - 2
    299250111-6b554786-c0b8-4b05-9724-e783cd0f7ea3299396275-055b7e77-c277-4cb6-8500-e3da83f78401

통신 시 레이아웃 수정 사

  • 우하단 취소 위치 가운데로 정렬
    pokeruby-1

  • 통신 에러 발생 시 텍스트 가운데로 정렬
    pokeruby-1

  • 레코드 섞기 시 텍스트 출력 위치 변경
    pokeruby-0

텍스트 관련 문제

  • 한국어판 전용 점자 출력 적용 (내용 필요)

  • 나무열매 태그 크기 단위 수정 (오른쪽처럼 'cm'로 수정)
    304348809-65a3f6bc-dbe4-4621-92db-07d7e60ce64e304348832-0df7f46c-0ea9-4318-90cc-492a7e49a0c1

타 언어판 세이브 사용 시 박스 안 포켓몬의 이름이 짤림

pokeruby-0
일어판 세이브를 사용했는데, 스크린샷처럼 포켓몬의 이름이 4번째 글자부터 짤리네요
정상적인 플레이에선 발생하지 않는 상황이라 게임 자체에 큰 문제는 없지만 에메랄드엔 해당 문제가 없기에 혹시나 하는 마음으로 올려 봤습니다!
소스코드상 정상적으로 작동하는 것이라면 닫아주시면 감사하겠습니다:)

문제

  • 메시지 상자 텍스트 위치 변경 필요
    298829919-9af6c91a-ba2d-40e2-9b29-29c907d01058

TODO

  • 포켓내비: 트레이너 아이 목록 레이아웃
    pokeruby_modern_02pokeruby_jp_01

  • PC 좌측 레이아웃
    pokeruby_modern_01pokeruby_jp_01

오리지널 컬러로 맞추기

  • 상태화면 폰트

1  POKEMON_RUBY_AXVJ00-1pokeruby-0

우측 상단의 '그만둔다' 부분과, 일판 원본에 비해 검은 폰트가 조금 진한 감이 있네요. 수정 가능하시면 부탁드리겠습니다!

크레딧 업데이트

크레딧을 한글화 이전 상태로 되돌리고 내용을 추가할 예정입니다.

크레딧에 추가할 내용을 남겨주세요.

ref: pokeemerald#51

modern 빌드: 그래픽

modern용 폰트가 추가됨에 따라서 텍스트가 들어간 gfx도 나누는 작업이 필요

  • '돌아간다'
    pokeruby_modern_02

  • 도감 START 메뉴
    pokeruby_modern_01

  • 포켓몬스낵케이스 ('부드러움')
    pokeruby_modern_01

  • 나무열매 태그
    pokeruby_modern_02

  • 단어 선택 UI ('전부 삭제', '그만둔다', '결정')
    pokeruby_modern_02

파티 메뉴 텍스트 분할

party_menu_ordertext

현재 기술머신/콘테스트/배틀타워 참가 여부 등에 쓰이는 그래픽이 graphics/interface/party_menu_ordertext.png로 1개만 존재합니다. 그런데 이전에 쓰던 버전을 보니 아래처럼 ordertext, ordertext2가 있더라고요.

party_menu_ordertext
party_menu_ordertext2

일본어로는 저 두 개의 그래픽은 다른 뜻이지만 영판에서는 의미가 일부 생략되면서 다른 상황에서 같은 그래픽을 쓸 수 있었던 것 같습니다. 본래는 pokeruby 리소스도 같은 이미지 2개로 분화되어 있었으나, 리소스가 업데이트되면서 중복되는 이미지 중 하나를 날린 것으로 보입니다. 따라서 구버전처럼 그래픽을 하나 더 추가하여, 각 상황에 맞게 그래픽이 구분되어 쓰이도록 조정하는 것이 좋아 보입니다.

일단 예측되는 상황과 문구는 아래와 같습니다. 더 발견되면 찾는 대로 업로드하도록 하겠습니다.

기술머신 관련 - 배울 수 있다
콘테스트 - 참가 안 한다
배틀타워 - 참가 안 한다

상점 UI 재조정

pokeruby-0

아무것도 아닙니다 부분이 삐져나옵니다! 수정 부탁드리겠습니다

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.